// Copyright Epic Games, Inc. All Rights Reserved.

#pragma once

#include "GameplayEffectExecutionCalculation.h"

#include "LyraDamageExecution.generated.h"

class UObject;

/**
 * ULyraDamageExecution
 *
 *	用于游戏效果对健康属性造成伤害的执行类
 */
UCLASS()
class ULyraDamageExecution : public UGameplayEffectExecutionCalculation
{
	GENERATED_BODY()

public:
	/**
	 * 构造函数
	 */
	ULyraDamageExecution();

protected:
	/**
	 * 执行伤害计算的具体实现
	 * @param ExecutionParams 自定义执行参数
	 * @param OutExecutionOutput 自定义执行输出
	 */
	virtual void Execute_Implementation(const FGameplayEffectCustomExecutionParameters& ExecutionParams, FGameplayEffectCustomExecutionOutput& OutExecutionOutput) const override;
};